﻿using System;

namespace MiniSched.Logging {

    public class MiniSchedLogFactory {

        public static MiniSchedLogFactory Default {
            get {
                if (null == _Default) _Default = new MiniSchedLogFactory();
                return _Default;
            }
            set {
                if (null == value) throw new ArgumentNullException("Default");
                _Default = value;
            }
        }
        private static MiniSchedLogFactory _Default;

        public virtual MiniSchedLog CreateLogFor(Type type) {
            throw new NotImplementedException();
        }

        public virtual MiniSchedLog CreateLogFor<T>() {
            return CreateLogFor(typeof(T));
        }
    }
}
